﻿using System;
using System.Collections.Generic;
using System.Text;

namespace Pixysoft.Framework.Verifications
{
    class FalseVerifior : IVerifior
    {
        string _msg = null;

        private FalseVerifior()
        {
        }

        internal FalseVerifior(string msgformat, params object[] paras)
        {
            this._msg = string.Format(msgformat, paras);
        }

        public IVerifior IsInt()
        {
            return this;
        }

        public IVerifior IsDouble()
        {
            return this;
        }

        public IVerifior IsGreater<T>(T value)
        {
            return this;
        }

        public IVerifior IsLess<T>(T value)
        {
            return this;
        }

        public IVerifior IsChinese()
        {
            return this;
        }

        public IVerifior IsEmail()
        {
            return this;
        }

        public IVerifior IsUrl()
        {
            return this;
        }

        public IVerifior IsIP()
        {
            return this;
        }

        public IVerifior IsDateTime()
        {
            return this;
        }

        public IVerifior IsTel()
        {
            return this;
        }

        public IVerifior IsMobile()
        {
            return this;
        }

        public IVerifior IsPostCode()
        {
            return this;
        }

        public IVerifior IsQQ()
        {
            return this;
        }

        public IVerifior IsIDCard()
        {
            return this;
        }

        public IVerifior IsNullOrEmpty()
        {
            return this;
        }

        public IVerifior IsNotNullOrEmpty()
        {
            return this;
        }

        public IVerifior IsInLengthRange(int min, int max)
        {
            return this;
        }

        public IVerifior IsMatchRegex(string regex)
        {
            return this;
        }

        public bool Result()
        {
            return false;
        }



        public IVerifior IsShort()
        {
            return this;
        }

        public IVerifior IsLong()
        {
            return this;
        }

        public IVerifior IsDecimal()
        {
            return this;
        }

        public IVerifior IsFloat()
        {
            return this;
        }

        public IVerifior IsGreater(int value)
        {
            return this;
        }

        public IVerifior IsGreater(double value)
        {
            return this;
        }

        public IVerifior IsGreater(DateTime value)
        {
            return this;
        }

        public IVerifior IsGreater(short value)
        {
            return this;
        }

        public IVerifior IsGreater(long value)
        {
            return this;
        }

        public IVerifior IsGreater(decimal value)
        {
            return this;
        }

        public IVerifior IsGreater(float value)
        {
            return this;
        }

        public IVerifior IsGreaterEqual(int value)
        {
            return this;
        }

        public IVerifior IsGreaterEqual(double value)
        {
            return this;
        }

        public IVerifior IsGreaterEqual(DateTime value)
        {
            return this;
        }

        public IVerifior IsGreaterEqual(short value)
        {
            return this;
        }

        public IVerifior IsGreaterEqual(long value)
        {
            return this;
        }

        public IVerifior IsGreaterEqual(decimal value)
        {
            return this;
        }

        public IVerifior IsGreaterEqual(float value)
        {
            return this;
        }

        public IVerifior IsLess(int value)
        {
            return this;
        }

        public IVerifior IsLess(double value)
        {
            return this;
        }

        public IVerifior IsLess(DateTime value)
        {
            return this;
        }

        public IVerifior IsLess(short value)
        {
            return this;
        }

        public IVerifior IsLess(long value)
        {
            return this;
        }

        public IVerifior IsLess(decimal value)
        {
            return this;
        }

        public IVerifior IsLess(float value)
        {
            return this;
        }

        public IVerifior IsLessEqual(int value)
        {
            return this;
        }

        public IVerifior IsLessEqual(double value)
        {
            return this;
        }

        public IVerifior IsLessEqual(DateTime value)
        {
            return this;
        }

        public IVerifior IsLessEqual(short value)
        {
            return this;
        }

        public IVerifior IsLessEqual(long value)
        {
            return this;
        }

        public IVerifior IsLessEqual(decimal value)
        {
            return this;
        }

        public IVerifior IsLessEqual(float value)
        {
            return this;
        }

        public IVerifior IsLength(int length)
        {
            return this;
        }



        public string Message
        {
            get { return _msg; }
        }



        bool IVerifior.Result(out string message)
        {
            message = this._msg;

            return false;
        }



        public IVerifior IsGreaterEqual<T>(T value)
        {
            return this;
        }

        public IVerifior IsLessEqual<T>(T value)
        {
            return this;
        }

        public IVerifior IsEqual(object value)
        {
            return this;
        }

        public IVerifior IsEqual(object value, bool ignoreCase)
        {
            return this;
        }
    }
}
